﻿using System;
namespace Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik {
    
    
    public partial class KohustisOtsing : global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IKohustisOtsing {
        
        private string @__menetluseNR;
        
        private System.Int64? @__menetluseObjektID;
        
        private System.Collections.Generic.List<System.Int64?> @__tyypKL = new System.Collections.Generic.List<System.Int64?>();
        
        private System.Collections.Generic.List<System.Int64?> @__liikKL = new System.Collections.Generic.List<System.Int64?>();
        
        private System.Collections.Generic.List<System.Int64?> @__alaLiikKL = new System.Collections.Generic.List<System.Int64?>();
        
        private System.DateTime? @__algusKP;
        
        private System.DateTime? @__algusKPVahemikuLoppKP;
        
        private System.DateTime? @__loppKP;
        
        private System.DateTime? @__rakendumiseAlgusKP;
        
        private System.DateTime? @__rakendumiseAlgusKPVahemikuLoppKP;
        
        private System.DateTime? @__rakendamiseTahtaegKP;
        
        private System.DateTime? @__rakendamiseTahtaegKPVahemikuLoppKP;
        
        private System.DateTime? @__rakendumiseLoppKP;
        
        private System.DateTime? @__rakendumiseLoppKPVahemikuLoppKP;
        
        private string @__isikuKood;
        
        private string @__isikuNimi;
        
        private string @__isikuEesnimi;
        
        private string @__isikuKoosnimi;
        
        private System.Int32? @__isikuVanusMaaramisel;
        
        private System.Int32? @__isikuVanusMaaramiselVahemikuLoppVanus;
        
        private System.Collections.Generic.List<System.Int64?> @__seisundKL = new System.Collections.Generic.List<System.Int64?>();
        
        private System.DateTime? @__seisundKP;
        
        private System.Boolean? @__loppKPIsNull;
        
        private System.Boolean? @__rakendumiseLoppKPIsNull;
        
        private System.Int64? @__osaliseObjektID;
        
        private System.Int64? @__isikuObjektID;
        
        private System.Int64? @__objektID;
        
        private System.Decimal? @__moistetudSumma;
        
        private System.Int64? @__moistetudSummaValuutaKL;
        
        private System.Decimal? @__tasutudSumma;
        
        private System.Int64? @__tasutudSummaValuutaKL;
        
        private System.Boolean? @__taidetud;
        
        private System.Int64? @__taitmiseTapsustusKL;
        
        private System.Boolean? @__voibKandaOsiti;
        
        private System.Collections.Generic.List<System.Int64?> @__gruppKL = new System.Collections.Generic.List<System.Int64?>();
        
        private System.Boolean? @__isikudSolidaarselt;
        
        private System.Int64? @__noueObjektID;
        
        private System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IMakseRekvisiidid> @__makseRekvisiidid = new System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IMakseRekvisiidid>();
        
        public KohustisOtsing() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public KohustisOtsing(
                    string @menetluseNR, 
                    System.Int64? @menetluseObjektID, 
                    System.Collections.Generic.List<System.Int64?> @tyypKL, 
                    System.Collections.Generic.List<System.Int64?> @liikKL, 
                    System.Collections.Generic.List<System.Int64?> @alaLiikKL, 
                    System.DateTime? @algusKP, 
                    System.DateTime? @algusKPVahemikuLoppKP, 
                    System.DateTime? @loppKP, 
                    System.DateTime? @rakendumiseAlgusKP, 
                    System.DateTime? @rakendumiseAlgusKPVahemikuLoppKP, 
                    System.DateTime? @rakendamiseTahtaegKP, 
                    System.DateTime? @rakendamiseTahtaegKPVahemikuLoppKP, 
                    System.DateTime? @rakendumiseLoppKP, 
                    System.DateTime? @rakendumiseLoppKPVahemikuLoppKP, 
                    string @isikuKood, 
                    string @isikuNimi, 
                    string @isikuEesnimi, 
                    string @isikuKoosnimi, 
                    System.Int32? @isikuVanusMaaramisel, 
                    System.Int32? @isikuVanusMaaramiselVahemikuLoppVanus, 
                    System.Collections.Generic.List<System.Int64?> @seisundKL, 
                    System.DateTime? @seisundKP, 
                    System.Boolean? @loppKPIsNull, 
                    System.Boolean? @rakendumiseLoppKPIsNull, 
                    System.Int64? @osaliseObjektID, 
                    System.Int64? @isikuObjektID, 
                    System.Int64? @objektID, 
                    System.Decimal? @moistetudSumma, 
                    System.Int64? @moistetudSummaValuutaKL, 
                    System.Decimal? @tasutudSumma, 
                    System.Int64? @tasutudSummaValuutaKL, 
                    System.Boolean? @taidetud, 
                    System.Int64? @taitmiseTapsustusKL, 
                    System.Boolean? @voibKandaOsiti, 
                    System.Collections.Generic.List<System.Int64?> @gruppKL, 
                    System.Boolean? @isikudSolidaarselt, 
                    System.Int64? @noueObjektID, 
                    System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IMakseRekvisiidid> @makseRekvisiidid) {
            this.@__menetluseNR = @menetluseNR;
            this.@__menetluseObjektID = @menetluseObjektID;
            this.@__tyypKL = @tyypKL;
            this.@__liikKL = @liikKL;
            this.@__alaLiikKL = @alaLiikKL;
            this.@__algusKP = @algusKP;
            this.@__algusKPVahemikuLoppKP = @algusKPVahemikuLoppKP;
            this.@__loppKP = @loppKP;
            this.@__rakendumiseAlgusKP = @rakendumiseAlgusKP;
            this.@__rakendumiseAlgusKPVahemikuLoppKP = @rakendumiseAlgusKPVahemikuLoppKP;
            this.@__rakendamiseTahtaegKP = @rakendamiseTahtaegKP;
            this.@__rakendamiseTahtaegKPVahemikuLoppKP = @rakendamiseTahtaegKPVahemikuLoppKP;
            this.@__rakendumiseLoppKP = @rakendumiseLoppKP;
            this.@__rakendumiseLoppKPVahemikuLoppKP = @rakendumiseLoppKPVahemikuLoppKP;
            this.@__isikuKood = @isikuKood;
            this.@__isikuNimi = @isikuNimi;
            this.@__isikuEesnimi = @isikuEesnimi;
            this.@__isikuKoosnimi = @isikuKoosnimi;
            this.@__isikuVanusMaaramisel = @isikuVanusMaaramisel;
            this.@__isikuVanusMaaramiselVahemikuLoppVanus = @isikuVanusMaaramiselVahemikuLoppVanus;
            this.@__seisundKL = @seisundKL;
            this.@__seisundKP = @seisundKP;
            this.@__loppKPIsNull = @loppKPIsNull;
            this.@__rakendumiseLoppKPIsNull = @rakendumiseLoppKPIsNull;
            this.@__osaliseObjektID = @osaliseObjektID;
            this.@__isikuObjektID = @isikuObjektID;
            this.@__objektID = @objektID;
            this.@__moistetudSumma = @moistetudSumma;
            this.@__moistetudSummaValuutaKL = @moistetudSummaValuutaKL;
            this.@__tasutudSumma = @tasutudSumma;
            this.@__tasutudSummaValuutaKL = @tasutudSummaValuutaKL;
            this.@__taidetud = @taidetud;
            this.@__taitmiseTapsustusKL = @taitmiseTapsustusKL;
            this.@__voibKandaOsiti = @voibKandaOsiti;
            this.@__gruppKL = @gruppKL;
            this.@__isikudSolidaarselt = @isikudSolidaarselt;
            this.@__noueObjektID = @noueObjektID;
            this.@__makseRekvisiidid = @makseRekvisiidid;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected KohustisOtsing(IKohustisOtsing @kohustisOtsing) {
            this.@__menetluseNR = @kohustisOtsing.MenetluseNR;
            this.@__menetluseObjektID = @kohustisOtsing.MenetluseObjektID;
            this.@__tyypKL = @kohustisOtsing.TyypKL;
            this.@__liikKL = @kohustisOtsing.LiikKL;
            this.@__alaLiikKL = @kohustisOtsing.AlaLiikKL;
            this.@__algusKP = @kohustisOtsing.AlgusKP;
            this.@__algusKPVahemikuLoppKP = @kohustisOtsing.AlgusKPVahemikuLoppKP;
            this.@__loppKP = @kohustisOtsing.LoppKP;
            this.@__rakendumiseAlgusKP = @kohustisOtsing.RakendumiseAlgusKP;
            this.@__rakendumiseAlgusKPVahemikuLoppKP = @kohustisOtsing.RakendumiseAlgusKPVahemikuLoppKP;
            this.@__rakendamiseTahtaegKP = @kohustisOtsing.RakendamiseTahtaegKP;
            this.@__rakendamiseTahtaegKPVahemikuLoppKP = @kohustisOtsing.RakendamiseTahtaegKPVahemikuLoppKP;
            this.@__rakendumiseLoppKP = @kohustisOtsing.RakendumiseLoppKP;
            this.@__rakendumiseLoppKPVahemikuLoppKP = @kohustisOtsing.RakendumiseLoppKPVahemikuLoppKP;
            this.@__isikuKood = @kohustisOtsing.IsikuKood;
            this.@__isikuNimi = @kohustisOtsing.IsikuNimi;
            this.@__isikuEesnimi = @kohustisOtsing.IsikuEesnimi;
            this.@__isikuKoosnimi = @kohustisOtsing.IsikuKoosnimi;
            this.@__isikuVanusMaaramisel = @kohustisOtsing.IsikuVanusMaaramisel;
            this.@__isikuVanusMaaramiselVahemikuLoppVanus = @kohustisOtsing.IsikuVanusMaaramiselVahemikuLoppVanus;
            this.@__seisundKL = @kohustisOtsing.SeisundKL;
            this.@__seisundKP = @kohustisOtsing.SeisundKP;
            this.@__loppKPIsNull = @kohustisOtsing.LoppKPIsNull;
            this.@__rakendumiseLoppKPIsNull = @kohustisOtsing.RakendumiseLoppKPIsNull;
            this.@__osaliseObjektID = @kohustisOtsing.OsaliseObjektID;
            this.@__isikuObjektID = @kohustisOtsing.IsikuObjektID;
            this.@__objektID = @kohustisOtsing.ObjektID;
            this.@__moistetudSumma = @kohustisOtsing.MoistetudSumma;
            this.@__moistetudSummaValuutaKL = @kohustisOtsing.MoistetudSummaValuutaKL;
            this.@__tasutudSumma = @kohustisOtsing.TasutudSumma;
            this.@__tasutudSummaValuutaKL = @kohustisOtsing.TasutudSummaValuutaKL;
            this.@__taidetud = @kohustisOtsing.Taidetud;
            this.@__taitmiseTapsustusKL = @kohustisOtsing.TaitmiseTapsustusKL;
            this.@__voibKandaOsiti = @kohustisOtsing.VoibKandaOsiti;
            this.@__gruppKL = @kohustisOtsing.GruppKL;
            this.@__isikudSolidaarselt = @kohustisOtsing.IsikudSolidaarselt;
            this.@__noueObjektID = @kohustisOtsing.NoueObjektID;
            this.@__makseRekvisiidid = @kohustisOtsing.MakseRekvisiidid;
        }
        
        public virtual string MenetluseNR {
            get {
                return this.@__menetluseNR;
            }
            set {
                this.@__menetluseNR = value;
            }
        }
        
        public virtual System.Int64? MenetluseObjektID {
            get {
                return this.@__menetluseObjektID;
            }
            set {
                this.@__menetluseObjektID = value;
            }
        }
        
        public virtual System.Collections.Generic.List<System.Int64?> TyypKL {
            get {
                return this.@__tyypKL;
            }
            set {
                this.@__tyypKL = value;
            }
        }
        
        public virtual System.Collections.Generic.List<System.Int64?> LiikKL {
            get {
                return this.@__liikKL;
            }
            set {
                this.@__liikKL = value;
            }
        }
        
        public virtual System.Collections.Generic.List<System.Int64?> AlaLiikKL {
            get {
                return this.@__alaLiikKL;
            }
            set {
                this.@__alaLiikKL = value;
            }
        }
        
        public virtual System.DateTime? AlgusKP {
            get {
                return this.@__algusKP;
            }
            set {
                this.@__algusKP = value;
            }
        }
        
        public virtual System.DateTime? AlgusKPVahemikuLoppKP {
            get {
                return this.@__algusKPVahemikuLoppKP;
            }
            set {
                this.@__algusKPVahemikuLoppKP = value;
            }
        }
        
        public virtual System.DateTime? LoppKP {
            get {
                return this.@__loppKP;
            }
            set {
                this.@__loppKP = value;
            }
        }
        
        public virtual System.DateTime? RakendumiseAlgusKP {
            get {
                return this.@__rakendumiseAlgusKP;
            }
            set {
                this.@__rakendumiseAlgusKP = value;
            }
        }
        
        public virtual System.DateTime? RakendumiseAlgusKPVahemikuLoppKP {
            get {
                return this.@__rakendumiseAlgusKPVahemikuLoppKP;
            }
            set {
                this.@__rakendumiseAlgusKPVahemikuLoppKP = value;
            }
        }
        
        public virtual System.DateTime? RakendamiseTahtaegKP {
            get {
                return this.@__rakendamiseTahtaegKP;
            }
            set {
                this.@__rakendamiseTahtaegKP = value;
            }
        }
        
        public virtual System.DateTime? RakendamiseTahtaegKPVahemikuLoppKP {
            get {
                return this.@__rakendamiseTahtaegKPVahemikuLoppKP;
            }
            set {
                this.@__rakendamiseTahtaegKPVahemikuLoppKP = value;
            }
        }
        
        public virtual System.DateTime? RakendumiseLoppKP {
            get {
                return this.@__rakendumiseLoppKP;
            }
            set {
                this.@__rakendumiseLoppKP = value;
            }
        }
        
        public virtual System.DateTime? RakendumiseLoppKPVahemikuLoppKP {
            get {
                return this.@__rakendumiseLoppKPVahemikuLoppKP;
            }
            set {
                this.@__rakendumiseLoppKPVahemikuLoppKP = value;
            }
        }
        
        public virtual string IsikuKood {
            get {
                return this.@__isikuKood;
            }
            set {
                this.@__isikuKood = value;
            }
        }
        
        public virtual string IsikuNimi {
            get {
                return this.@__isikuNimi;
            }
            set {
                this.@__isikuNimi = value;
            }
        }
        
        public virtual string IsikuEesnimi {
            get {
                return this.@__isikuEesnimi;
            }
            set {
                this.@__isikuEesnimi = value;
            }
        }
        
        public virtual string IsikuKoosnimi {
            get {
                return this.@__isikuKoosnimi;
            }
            set {
                this.@__isikuKoosnimi = value;
            }
        }
        
        public virtual System.Int32? IsikuVanusMaaramisel {
            get {
                return this.@__isikuVanusMaaramisel;
            }
            set {
                this.@__isikuVanusMaaramisel = value;
            }
        }
        
        public virtual System.Int32? IsikuVanusMaaramiselVahemikuLoppVanus {
            get {
                return this.@__isikuVanusMaaramiselVahemikuLoppVanus;
            }
            set {
                this.@__isikuVanusMaaramiselVahemikuLoppVanus = value;
            }
        }
        
        public virtual System.Collections.Generic.List<System.Int64?> SeisundKL {
            get {
                return this.@__seisundKL;
            }
            set {
                this.@__seisundKL = value;
            }
        }
        
        public virtual System.DateTime? SeisundKP {
            get {
                return this.@__seisundKP;
            }
            set {
                this.@__seisundKP = value;
            }
        }
        
        public virtual System.Boolean? LoppKPIsNull {
            get {
                return this.@__loppKPIsNull;
            }
            set {
                this.@__loppKPIsNull = value;
            }
        }
        
        public virtual System.Boolean? RakendumiseLoppKPIsNull {
            get {
                return this.@__rakendumiseLoppKPIsNull;
            }
            set {
                this.@__rakendumiseLoppKPIsNull = value;
            }
        }
        
        public virtual System.Int64? OsaliseObjektID {
            get {
                return this.@__osaliseObjektID;
            }
            set {
                this.@__osaliseObjektID = value;
            }
        }
        
        public virtual System.Int64? IsikuObjektID {
            get {
                return this.@__isikuObjektID;
            }
            set {
                this.@__isikuObjektID = value;
            }
        }
        
        public virtual System.Int64? ObjektID {
            get {
                return this.@__objektID;
            }
            set {
                this.@__objektID = value;
            }
        }
        
        public virtual System.Decimal? MoistetudSumma {
            get {
                return this.@__moistetudSumma;
            }
            set {
                this.@__moistetudSumma = value;
            }
        }
        
        public virtual System.Int64? MoistetudSummaValuutaKL {
            get {
                return this.@__moistetudSummaValuutaKL;
            }
            set {
                this.@__moistetudSummaValuutaKL = value;
            }
        }
        
        public virtual System.Decimal? TasutudSumma {
            get {
                return this.@__tasutudSumma;
            }
            set {
                this.@__tasutudSumma = value;
            }
        }
        
        public virtual System.Int64? TasutudSummaValuutaKL {
            get {
                return this.@__tasutudSummaValuutaKL;
            }
            set {
                this.@__tasutudSummaValuutaKL = value;
            }
        }
        
        public virtual System.Boolean? Taidetud {
            get {
                return this.@__taidetud;
            }
            set {
                this.@__taidetud = value;
            }
        }
        
        public virtual System.Int64? TaitmiseTapsustusKL {
            get {
                return this.@__taitmiseTapsustusKL;
            }
            set {
                this.@__taitmiseTapsustusKL = value;
            }
        }
        
        public virtual System.Boolean? VoibKandaOsiti {
            get {
                return this.@__voibKandaOsiti;
            }
            set {
                this.@__voibKandaOsiti = value;
            }
        }
        
        public virtual System.Collections.Generic.List<System.Int64?> GruppKL {
            get {
                return this.@__gruppKL;
            }
            set {
                this.@__gruppKL = value;
            }
        }
        
        public virtual System.Boolean? IsikudSolidaarselt {
            get {
                return this.@__isikudSolidaarselt;
            }
            set {
                this.@__isikudSolidaarselt = value;
            }
        }
        
        public virtual System.Int64? NoueObjektID {
            get {
                return this.@__noueObjektID;
            }
            set {
                this.@__noueObjektID = value;
            }
        }
        
        public virtual System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IMakseRekvisiidid> MakseRekvisiidid {
            get {
                return this.@__makseRekvisiidid;
            }
            set {
                this.@__makseRekvisiidid = value;
            }
        }
    }
}
